﻿namespace Luka;

/// <summary>
/// 日志选项
/// </summary>
[NotScanned]
public sealed class LogOptions
{
    /// <summary>
    /// 日志文件
    /// </summary>
    public FileLog? FileLog { get; set; }

    /// <summary>
    /// sertry
    /// </summary>
    public SentryLog? Sentry { get; set; }
}

/// <summary>
/// sentry
/// </summary>
public sealed class SentryLog
{
    /// <summary>
    /// Dsn
    /// </summary>
    public string? Dsn { get; set; }
}

/// <summary>
/// 日志文件
/// </summary>
public sealed class FileLog
{
    /// <summary>
    /// 是否启用
    /// </summary>
    public bool IsEnable { get; set; } = true;

    /// <summary>
    /// 是否分类保存
    /// </summary>
    public bool IsClassify { get; set; }

    /// <summary>
    /// 可视化页面路径
    /// </summary>
    public string? PagePath { get; set; }

    /// <summary>
    /// 需要保存的日志级别
    /// </summary>
    public string[]? LogLevel { get; set; }
}